#include "EpilLexLocation.h"


const EpilLexLocation EpilLexLocation::InvalidLocation( -1, -1 );


EpilLexLocation::EpilLexLocation( const EpilLexLocation & location )
	: m_line( location.m_line )
	, m_column( location.m_column )
{
}

EpilLexLocation::EpilLexLocation( int line, int column )
	: m_line( line )
	, m_column( column )
{
}


EpilLexLocation & EpilLexLocation::operator=( const EpilLexLocation & rhs )
{
	m_line = rhs.m_line;
	m_column = rhs.m_column;
	return *this;
}


tstring EpilLexLocation::ToString() const
{
	tstringstream ret;
	ret << t("(Ln.") << m_line;
	ret << t(", ");
	ret << t("Col.") << m_column;
	ret << t(")");
	return ret.str();
}